package com.boc.ewr.bcimp.entity;

import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.boc.ewr.util.file.annotation.ImportEnumAnnotation;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * @Description: 对公账户信息
 * @Author: jeecg-boot
 * @Date:   2023-05-26
 * @Version: V1.0
 */
@Data
@TableName("bus_acct_info")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="bus_acct_info对象", description="对公账户信息")
public class BusAcctInfo implements Serializable {
    private static final long serialVersionUID = 1L;

	/**id*/
	@TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "id")
    private String id;
	/**二级行*/
	@Excel(name = "二级行", width = 15)
    @ApiModelProperty(value = "二级行")
    private String parentBranchNo;
	/**机构号*/
	@Excel(name = "机构号", width = 15)
    @ApiModelProperty(value = "机构号")
    private String branchNo;
	/**机构*/
	@Excel(name = "机构", width = 15)
    @ApiModelProperty(value = "机构")
    private String branchNm;
	/**账户*/
	@Excel(name = "账户", width = 15)
    @ApiModelProperty(value = "账户")
    private String accNo;
	/**主账户*/
	@Excel(name = "主账户", width = 15)
    @ApiModelProperty(value = "主账户")
    private String mainAccNo;
	/**客户号*/
	@Excel(name = "客户号", width = 15)
    @ApiModelProperty(value = "客户号")
    private String cusmNo;
	/**客户名称*/
	@Excel(name = "客户名称", width = 15)
    @ApiModelProperty(value = "客户名称")
    private String cusmNm;
	/**币种*/
	@Excel(name = "币种", width = 15)
    @ApiModelProperty(value = "币种")
    private String currencyName;
	/**时点余额*/
	@Excel(name = "时点余额", width = 15)
    @ApiModelProperty(value = "时点余额")
    private String balance;
	/**年日均余额*/
	@Excel(name = "年日均余额", width = 15)
    @ApiModelProperty(value = "年日均余额")
    private String yearDayavgBal;
	/**开户日期*/
	@Excel(name = "开户日期", width = 15, format = "yyyy-MM-dd")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "开户日期")
    private Date oacctDate;
	/**账户状态*/
	@Excel(name = "账户状态", width = 15)
    @ApiModelProperty(value = "账户状态")
    @ImportEnumAnnotation(enumName = "BusAccountStatusEnum")
    private String acctSta;
	/**账户性质*/
	@Excel(name = "账户性质", width = 15)
    @ApiModelProperty(value = "账户性质")
    private String actType;
	/**是否为中行贷款客户*/
	@Excel(name = "是否为中行贷款客户", width = 15)
    @ApiModelProperty(value = "是否为中行贷款客户")
    private String isBocLoanCusm;
	/**是否为对公网银客户*/
	@Excel(name = "是否为对公网银客户", width = 15)
    @ApiModelProperty(value = "是否为对公网银客户")
    private String isBusEbkCusm;
	/**是否为手机银行客户*/
	@Excel(name = "是否为手机银行客户", width = 15)
    @ApiModelProperty(value = "是否为手机银行客户")
    private String isMobBkCusm;
	/**贷款总额*/
	@Excel(name = "贷款总额", width = 15)
    @ApiModelProperty(value = "贷款总额")
    private String loanTotal;
	/**前13个月金融交易总笔数*/
	@Excel(name = "前13个月金融交易总笔数", width = 15)
    @ApiModelProperty(value = "前13个月金融交易总笔数")
    private String lastThtnMonsTrans;
	/**前13个月金融交易借方发生额*/
	@Excel(name = "前13个月金融交易借方发生额", width = 15)
    @ApiModelProperty(value = "前13个月金融交易借方发生额")
    private String lastThtnMonsBrwrTt;
	/**前13个月金融交易贷方发生额*/
	@Excel(name = "前13个月金融交易贷方发生额", width = 15)
    @ApiModelProperty(value = "前13个月金融交易贷方发生额")
    private String lastThtnMonsLaonTt;
	/**近3个月交易总笔数*/
	@Excel(name = "近3个月交易总笔数", width = 15)
    @ApiModelProperty(value = "近3个月交易总笔数")
    private String lastThMonsTrans;
	/**当月金融交易总笔数*/
	@Excel(name = "当月金融交易总笔数", width = 15)
    @ApiModelProperty(value = "当月金融交易总笔数")
    private String monFinaceTrans;
	/**当月单笔最大交易额*/
	@Excel(name = "当月单笔最大交易额", width = 15)
    @ApiModelProperty(value = "当月单笔最大交易额")
    private String monSnglBigNum;
	/**当月单笔最大交易额经办柜员*/
	@Excel(name = "当月单笔最大交易额经办柜员", width = 15)
    @ApiModelProperty(value = "当月单笔最大交易额经办柜员")
    private String monBigNumTlr;
	/**法定代表人*/
	@Excel(name = "法定代表人", width = 15)
    @ApiModelProperty(value = "法定代表人")
    private String lglRpstNm;
	/**法定代表人证件号码*/
	@Excel(name = "法定代表人证件号码", width = 15)
    @ApiModelProperty(value = "法定代表人证件号码")
    private String lglRpstId;
	/**法定代表人客户号*/
	@Excel(name = "法定代表人客户号", width = 15)
    @ApiModelProperty(value = "法定代表人客户号")
    private String lglRpstCusmNum;
	/**法人住宅电话*/
	@Excel(name = "法人住宅电话", width = 15)
    @ApiModelProperty(value = "法人住宅电话")
    private String lglRpstTel;
	/**法人移动电话*/
	@Excel(name = "法人移动电话", width = 15)
    @ApiModelProperty(value = "法人移动电话")
    private String lglRpstMob;
	/**法人单位电话*/
	@Excel(name = "法人单位电话", width = 15)
    @ApiModelProperty(value = "法人单位电话")
    private String lglRpstBusTel;
	/**法人金融资产*/
	@Excel(name = "法人金融资产", width = 15)
    @ApiModelProperty(value = "法人金融资产")
    private String lglRpstFinaceAll;
	/**法人贷款余额*/
	@Excel(name = "法人贷款余额", width = 15)
    @ApiModelProperty(value = "法人贷款余额")
    private String lglRpstLoanLast;
	/**财务负责人*/
	@Excel(name = "财务负责人", width = 15)
    @ApiModelProperty(value = "财务负责人")
    private String finacePrincipalNm;
	/**财务负责人证件号码*/
	@Excel(name = "财务负责人证件号码", width = 15)
    @ApiModelProperty(value = "财务负责人证件号码")
    private String finacePrincipalId;
	/**财务负责人客户号*/
	@Excel(name = "财务负责人客户号", width = 15)
    @ApiModelProperty(value = "财务负责人客户号")
    private String finacePrincipalCusmNo;
	/**财务负责人住宅电话*/
	@Excel(name = "财务负责人住宅电话", width = 15)
    @ApiModelProperty(value = "财务负责人住宅电话")
    private String finacePrincipalTel;
	/**财务负责人移动电话*/
	@Excel(name = "财务负责人移动电话", width = 15)
    @ApiModelProperty(value = "财务负责人移动电话")
    private String finacePrincipalMob;
	/**财务财务负责人单位电话*/
	@Excel(name = "财务财务负责人单位电话", width = 15)
    @ApiModelProperty(value = "财务财务负责人单位电话")
    private String finacePrincipalBusTel;
	/**财务财务负责人金融资产*/
	@Excel(name = "财务财务负责人金融资产", width = 15)
    @ApiModelProperty(value = "财务财务负责人金融资产")
    private String finacePrincipalFinaceAll;
	/**财务财务负责人贷款余额*/
	@Excel(name = "财务财务负责人贷款余额", width = 15)
    @ApiModelProperty(value = "财务财务负责人贷款余额")
    private String finacePrincipalLoanLast;
	/**注册地址*/
	@Excel(name = "注册地址", width = 15)
    @ApiModelProperty(value = "注册地址")
    private String signAddr;
	/**办公地址*/
	@Excel(name = "办公地址", width = 15)
    @ApiModelProperty(value = "办公地址")
    private String workAddr;
	/**冻结日期*/
	@Excel(name = "冻结日期", width = 15, format = "yyyy-MM-dd")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "冻结日期")
    private Date frzDate;
	/**冻结到期日*/
	@Excel(name = "冻结到期日", width = 15, format = "yyyy-MM-dd")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "冻结到期日")
    private Date frzSropDate;
	/**冻结原因*/
	@Excel(name = "冻结原因", width = 15)
    @ApiModelProperty(value = "冻结原因")
    private String frzReason;
	/**反洗钱系统风险等级*/
	@Excel(name = "反洗钱系统风险等级", width = 15)
    @ApiModelProperty(value = "反洗钱系统风险等级")
    private String amlSysRskClass;
}
